关于WebView2,是否可以入坑,及踩坑

您所在的位置:网站首页 微软 webview2 关于WebView2,是否可以入坑,及踩坑

关于WebView2,是否可以入坑,及踩坑

2023-06-23 06:57| 来源: 网络整理| 查看: 265

先结论

首先对于WebView2,我认为是完全可以替代CEF来使用,用起来是真的舒服 微软团队这个积极维护这个项目,4周一更新的频率就可以看出是有多积极 关于资料什么的,网上相对来说已经挺多了,完全不用担心

优缺点 优点 使用方便,NuGet里装个WebView2就能用,和CEF的麻烦程度比起来,简直就是天上地下 包小,WebView2 runtime可以直接在线安装 支持H264,对PDF也很友好 缺点 需要.net framework4.5.2(记不清了)以上或.net 5 对于WPF,依然渲染在最上层(解决方法:把需要渲染上层的布局放在模态窗口并跟随,同时绑定同一个ViewModel方便使用)已修复 使用人员少,没形成社区 踩过的坑

1. userDataFolder 关于用户数据文件夹,如果不设置,默认会存放在运行程序目录下,如果运行程序在ProgramFiles目录,则会有权限问题,导致写入失败而报错,解决方法是在初始化时修改到其他目录,如local

protected override async void OnRender(DrawingContext drawingContext) { base.OnRender(drawingContext); try { var webView2Environment = await CoreWebView2Environment.CreateAsync(browserExecutableFolder: null, userDataFolder: SDK.BaseConst.DataBasePath); await WebView2.EnsureCoreWebView2Async(webView2Environment); } catch (Exception){} }

2. input-file标签 当程序以管理员身份运行时,HTML中如果包含input-file则点击无效 我在github的项目中看到过,他们会在未来的版本中修复这个问题,目前只能取消管理员身份,如可以把需要管理员的操作放在安装或子程序中

3. 显示-兼容性问题 注入dll导致渲染失败,一些安全厂家注入的dll签名未通过,最终导致,解决方法只能去找出并卸载

查看注入的dll列表edge://conflicts/#R 如果存在非微软和谷歌签名的dll,就存在嫌疑了,(我遇到的是用户电脑上安装了T.E.C公司的软件,用来监测电脑) 具体资料参考。 再结论

坑不大,但也不小,好在项目都在积极维护,只能说入坑不亏 最后附上几个地址方便使用 官方文档 Runtime



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3